/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Negocio;
import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;
/**
 *
 * @author sistemas
 */
public class ListaCliente {
    private List<Negocio.Cliente> Lista = new ArrayList<Negocio.Cliente>();
    public int generarId(){
        try
        {
            return (Lista.size()+ 1);
        }
        catch (Exception XE)
        {
            return 1;
        }
    }
    public boolean insertar(Negocio.Cliente obj){   /*Cambio para posible error de registro*/
        try{ 
            Lista.add(obj);
            return true;
        }
        catch(Exception e){
            return false;
        }
    }
    public Negocio.Cliente leer(int pos){
        return Lista.get(pos);
    }
    public List<Negocio.Cliente> TraerLista(){
        return Lista;
    }
    public List<Negocio.Cliente> TraerClientePorCarnet(Integer ci){
        if(ci==0){
            return TraerLista();
        }
        else {
            List<Negocio.Cliente> objAux =new ArrayList<Negocio.Cliente>();
            Iterator iterador = Lista.listIterator();
            while(iterador.hasNext()){
                Negocio.Cliente objCliente =new Cliente();
                objCliente=(Negocio.Cliente)iterador.next();
                if(objCliente.getCarnet()==ci){
                    objAux.add(objCliente);
                }
            }
            return objAux;
        }
    }
    public List<Negocio.Cliente> TraerClientePorNombre(String nombre){
        if(nombre.equals(" ")){
            return TraerLista();
        }
        else {
            List<Negocio.Cliente> objAux =new ArrayList<Negocio.Cliente>();
            Iterator iterador = Lista.listIterator();
            while(iterador.hasNext()){
                Negocio.Cliente objCliente =new Cliente();
                objCliente=(Negocio.Cliente)iterador.next();
                if(objCliente.getNombre().equals(nombre)){
                    objAux.add(objCliente);
                }
            }
            return objAux;
        }
    }
    public void Eliminar(int i){
//        Lista.remove(objCliente);
        Lista.remove(i);
    }
    public void Modificar(Cliente objCliente){
        Cliente auxCliente= new Cliente();
        auxCliente.setId(objCliente.getId());
        auxCliente.setNombre(objCliente.getNombre());
        auxCliente.setApellidoPaterno(objCliente.getApellidoPaterno());
        auxCliente.setApellidoPaterno(objCliente.getApellidoMaterno());
        auxCliente.setFechaNacimiento(objCliente.getFechaNacimiento());
        auxCliente.setSexo(objCliente.getSexo());
        auxCliente.setCarnet(objCliente.getCarnet());
        Lista.set(objCliente.getId()-1, auxCliente);
        
    }
}
